package com.xiaoshuidi.cloud.module.contract.enums;

import com.xiaoshuidi.cloud.framework.common.enums.RpcConstants;

/**
 * API 相关的枚举
 *
 * @author 合房源码
 */
public class ApiConstants {


    public static final String NAME = "contract";
    /**
     * 服务名
     *
     * 注意，需要保证和 spring.application.name 保持一致
     */
    public static final String SERVERNAME = "lease-contract-server";

    public static final String PREFIX = RpcConstants.RPC_API_PREFIX +  "/contract";

    public static final String VERSION = "1.0.0";

    public static final Integer ZERO = 0;

    public static final Integer ONE = 1;
    public static final Integer TWO = 2;
    public static final Integer THREE = 3;
    public static final Integer TEN = 10;
    public static final String EMPTY = "";
    public static final String SPOT = "\\.";

    public static final String WAVY_LINE = "~";

    public static Long RENT_FEE_ID=1L;
    public static String  RENT_FEE_NAME="租金";

    public static Long DEPOSIT_FEE_ID=2L;
    public static String DEPOSIT_FEE_NAME="押金";
    public static Long PROPERTY_FEE_ID=10L;
    public static String PROPERTY_FEE_NAME="物业费";

    //添加费项时后缀
    public static final String FEES= "_fees";
    public static final String CYCLE= "cycle";
    public static final String ONCE= "once";
    public static final String DEPOSIT= "deposit";

    //生成账单前缀
    public static final String ZKHTZD="ZKHTZD";
    //退租清算单
    public static final String ZKHTTZ="ZKHTZD";
    public static final String TZ="zkhtzd:";
    //业主合同账单编号前缀
    public static final String YZHTZD="YZHTZD";
    public static final String BILL="bill:";

    //生成合同前缀
    public static final String ZKZLHT="ZKZLHT";
    public static final String CONTRACT="contract:";

    public static final String CONTRACT_OWNER_REDIS_KEY = "contractOwner:";
    public static final String CONTRACT_OWNER_PREFIX = "YZHT";



    // ================生成电子合同====================
    // 电子合同编号redisKey前缀
    public static final String EL_CONTRACT_REDIS_PREFIX = "electronicContract:";
    // 电子合同编号生成规则前缀
    public static final String EL_CONTRACT_PREFIX = "DZHT_";
    // 业主电子合同编号生成规则前缀
    public static final String OWNER_EL_CONTRACT_PREFIX = "DZHT_";
    // 连接符 下划线
    public static final String UNDERLINE = "_";
    // 合同填充字体大小
    public static final String CONTRACT_FILLING_FONT_SIZE = "10.5";
    // 合同填充字体类型
    public static final String CONTRACT_FILLING_FONT_TYPE = "0";
    // 合同填充合同对象
    public static final String CONTRACT_FILLING_ENTITY_CONTRACT = "contract";
    // 合同填充房源对象
    public static final String CONTRACT_FILLING_ENTITY_ROOM = "room";
    // 合同填充业主合同对象
    public static final String OWNER_CONTRACT_FILLING_ENTITY_CONTRACT = "owner";
    //房间资产
    public static final String ROOM_ASSET = "room_asset";
    //家具家电
    public static final String OWNER_FURNITURE = "owner_furniture";
    //物品凭证
    public static final String OWNER_PROPERTY = "owner_property";
    // 男
    public static final String GENDER_MAN = "男";
    // 女
    public static final String GENDER_WOMAN = "女";

    // =============== 合同签约相关 ==============
    //获取自动签约RedisKey
    public static final String AUTO_SIGN_TRANSACTION_REDIS_KEY = "autoSignTransactionId:";
    //获取自动签约交易号生成规则前缀
    public static final String AUTO_SIGN_TRANSACTION_PREFIX = "ZDQY_";
    //自动签约线上授权委托书的合同编号生成规则前缀
    public static final String AUTO_SIGN_CONTRACT_NO_PREFIX = "ZDQYWTS_";
    //甲方签约RedisKey
    public static final String LANDLORD_TRANSACTION_REDIS_KEY = "landlordTransactionId:";
    //甲方签约交易号生成规则前缀
    public static final String LANDLORD_TRANSACTION_PREFIX = "JFQY_";
    //业主合同甲方签约交易号生成规则前缀
    public static final String OWNER_LANDLORD_TRANSACTION_PREFIX = "JFQYYZHT_";
    //甲方签约合同名称
    public static final String SIGN_CONTRACT_NAME = "房屋租赁合同";
    //甲方签约填充方式 0-关键字
    public static final String LANDLORD_SIGN_FILLING_TYPE = "0";
    //甲方签约填充关键字
    public static final String LANDLORD_SIGN_FILLING_KEYWORDS = "甲方（盖章）";
    //甲方签约填充关键字策略 0：所有关键字签章
    public static final String LANDLORD_SIGN_FILLING_KEYWORD_STRATEGY = "0";
    //甲方签约合同填充角色
    public static final String LANDLORD_SIGN_FILLING_ROLE = "3";
    //乙方签约RedisKey
    public static final String CUSTOMER_TRANSACTION_REDIS_KEY = "extSign:";
    //乙方签约交易号生成规则前缀
    public static final String CUSTOMER_TRANSACTION_PREFIX = "YFQY_";
    //业主合同乙方签约交易号生成规则前缀
    public static final String OWNER_CUSTOMER_TRANSACTION_PREFIX = "YFQYYZHT_";
    //乙方签约类型
    public static final String CUSTOMER_MOBILE_SIGN_TYPE= "2";
    //乙方签约类型
    public static final String CUSTOMER_SIGN_KEYWORD= "A乙方专门签章处A";
    //乙方签约地址被替换的url
    public static final String CUSTOMER_SIGN_URL_REPLACE_TARGET= "https://dada.creative-apartment.com.cn/";
    //乙方签约地址替换的url
    public static final String CUSTOMER_SIGN_URL_REPLACEMENT= "https://extapi.fadada.com/api2/";
    //乙方签约回调状态码
    public static final Integer CUSTOMER_CALLBACK_CODE = 3000;
    // 安全协议RedisKey
    public static final String SECURITY_PROTOCOL_REDIS_KEY = "securityProtocol:";
    // 安全协议合同编号生成规则前缀
    public static final String SECURITY_PROTOCOL_PREFIX = "AQXY_";
    // 安全协议合同名称
    public static final String SECURITY_PROTOCOL_NAME = "安全协议合同";
    // 安全协议合同名称
    public static final String DOC_TYPE = ".pdf";


    public static String  DEPOSIT_STR = "押";
    public static String  PAY_STR = "付";
    public static String  OTHER_STR = "其他";
    public static String  YEAR_STR = "年";
    public static String  MONTH_STR = "个月";
    public static String  DAY_STR = "天";

    // =============== 合同模板相关 ==============
    public static String  CONTRACT_TEMPLATE_REDIS_KEY = "contractTemp:";

    public static String ORDER_COLLECTION_SUCCESS = "催款短信发送成功";


    // ============== 企业客户房间信息 ==============
    public static String HYDROPOWER_PROVIDER_COMPANY = "企业";
    public static String HYDROPOWER_PROVIDER_ROOM_CHIEF = "寝室长";
    public static String ROOM_STATUS_RENTED = "已退租";
    public static String ROOM_STATUS_APPROVAL = "退租待审批";
    public static String ROOM_STATUS_REJECT = "退租已驳回";

    //================= 业主打款编号 =============================
    //生成合同前缀
    public static final String ZDFK = "ZDFK";
    public static final String OWNER_ORDER = "owner:order:";

    //赔偿金
    public static final Long FEE_DAMAGES_ID = 13L;
    public static final String FEE_DAMAGES_NAME = "赔偿金";

    public static final String DETAIL_TYPE_TWO = "2";

    public static final String FLOW_TYPE_IN = "in";

    //================= 备案状态 =============================
    //未备案
    public static final Integer UN_REGISTERED = 1;
    //已备案
    public static final Integer REGISTERED = 2;

}
